﻿using System;
using System.Diagnostics;

public unsafe struct app_import_entry
{
	public uint offset;
	public fixed byte name[32];
}

public unsafe struct app_export_entry
{
	public uint offset;
	public fixed byte name[32];
}

public class app
{
	public uint import_count;
	public app_import_entry[] import_data;
	public uint export_count;
	public app_export_entry[] export_data;
	public uint bin_size;
	public unsafe void* bin_data;
	public uint bin_entry;
	public uint origin;
	public uint prog_size;
	public uint bin_bss;
}
public unsafe struct _app_ccdl
{
	//public string ident = new string(new char[4]);
	//public byte[] unknown = new byte[20];
	//public byte[] padding = new byte[8];

    public fixed byte ident[4];
    public fixed byte unknown[20];
    public fixed byte padding[8];


    public _app_ccdl(byte[] v1, byte[] v2, byte[] v3) : this()
    {

    }
}


public unsafe struct _app_impt
{
	//public string ident = new string(new char[4]);
	//public uint unknown;
	//public uint offset;
	//public uint size;
	//public byte[] padding = new byte[16];

    public fixed byte ident[4];
    public uint unknown;
    public uint offset;
    public uint size;
    public fixed byte padding[16];


    public _app_impt(byte[] v1, int v2, int v3, int v4, byte[] v5) : this()
    {
        
    }
}


public unsafe struct _app_expt
{
	//public string ident = new string(new char[4]);
	//public uint unknown;
	//public uint offset;
	//public uint size;
	//public byte[] padding = new byte[16];

    public fixed byte ident[4];
    public uint unknown;
    public uint offset;
    public uint size;
    public fixed byte padding[16];


    public _app_expt(byte[] v1, int v2, int v3, int v4, byte[] v5) : this()
    {

    }
}


public unsafe struct _app_rawd
{
	//public string ident = new string(new char[4]);
	public fixed byte ident[4];
    public uint unknown0;
	public uint offset;
	public uint size;
	public uint unknown1;
	public uint entry;
	public uint origin;
	public uint prog_size;


    public _app_rawd(byte[] v1, int v2, int v3, int v4, int v5, int v6, uint v7, int v8) : this()
    {
        
    }
}


public unsafe struct _app_impt_entry
{
	public uint str_offset;
	public fixed uint unknown[2];
	public uint offset;

}


public unsafe struct _app_expt_entry
{
	public uint str_offset;
	public fixed uint unknown[2];
	public uint offset;

}

